import request from '@/utils/request'

// 兼容适配：根据业务类型选择后端前缀
// biz 可选：'purchase' | 'report' | 'work' | 'asset'；默认 'work'
function resolvePrefix(biz) {
  switch ((biz || '').toLowerCase()) {
    case 'purchase':
      return '/system/purchase/status'
    case 'report':
      return '/system/report/status'
    case 'asset':
      return '/system/status'
    default:
      return '/system/work/status'
  }
}

// 查询状态列表（从 query.biz 读取业务类型）
export function listStatus(query) {
  const prefix = resolvePrefix(query && query.biz)
  return request({
    url: prefix + '/list',
    method: 'get',
    params: query
  })
}

// 查询状态详细（可选第二参 biz）
export function getStatus(code, biz) {
  const prefix = resolvePrefix(biz)
  return request({
    url: prefix + '/' + code,
    method: 'get'
  })
}

// 新增状态（从 data.biz 读取）
export function addStatus(data) {
  const prefix = resolvePrefix(data && data.biz)
  return request({
    url: prefix,
    method: 'post',
    data: data
  })
}

// 修改状态（从 data.biz 读取）
export function updateStatus(data) {
  const prefix = resolvePrefix(data && data.biz)
  return request({
    url: prefix,
    method: 'put',
    data: data
  })
}

// 删除状态（可选第二参 biz）
export function delStatus(code, biz) {
  const prefix = resolvePrefix(biz)
  return request({
    url: prefix + '/' + code,
    method: 'delete'
  })
}
